﻿// Project: Salient
// http://salient.codeplex.com
// 
// Copyright 2010, Sky Sanders <sky at skysanders.net>
// licensed under the GPL Version 2 licenses.
// http://salient.codeplex.com/license
// 
// 
// You may use this code under the terms of the GNU General Public 
// License (GPL) Version 2.
namespace Salient.Net
{
    // ReSharper disable TypeParameterCanBeVariant
    // DO NOT MARK THIS COVARIANT - BREAKS NON 4.0 CODE!
    ///<summary>
    /// This delegate describes a method that processes an http response
    /// and returns an instance of type <typeparamref name="T"/>.
    ///</summary>
    ///<param name="gatewayRequestState"></param>
    ///<typeparam name="T"></typeparam>
    public delegate T GatewayRequestHandlerDelegate<T>(GatewayRequestState gatewayRequestState) where T : class, new();

    // ReSharper restore TypeParameterCanBeVariant
}
